Automatic rewards and benefits optimization

ABSTRACT

A processor may detect a user interaction with a user interface provided through a network by a server. The processor may analyze the user interaction to identify at least one offer associated with at least one item available for purchase through the user interface. The offer may be associated with a first payment type. The processor may process a user transaction to purchase the at least one item. The processing may include automatically applying the first payment type to the transaction.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from U.S. patent application Ser. No.16/196,135, entitled “AUTOMATIC REWARDS AND BENEFITS OPTIMIZATION,”filed Nov. 20, 2018, the entirety of which is incorporated by referenceherein.

BACKGROUND

Internet-based commerce systems and methods are widely available. Inmany ecommerce systems, a user may purchase goods or services by sendinga transaction request to a transaction server. For example, a user of anelectronic device may select a payment method (e.g., a credit card ordebit card), enter payment information (e.g., a card number and/or otherrequired information), and send the information to a server forprocessing. Generally, users may have multiple payment options at theirdisposal, and different payment options may provide different benefitsto the user. For example, some payment types and/or ecommerce merchantsmay offer rewards (e.g., miles, points, cash back, etc.) or otherincentives and/or financing options.

SUMMARY OF THE DISCLOSURE

Some embodiments disclosed herein may include a method of applying anoffer to a transaction. The method may include detecting, by aprocessor, a user interaction with a user interface provided through anetwork by a server. The method may include analyzing, by the processor,the user interaction to identify at least one offer associated with atleast one item available for purchase through the user interface. Theoffer may be associated with a first payment type. The method mayinclude generating, by the processor, a virtual credit card number asthe first payment type. The method may include processing, by theprocessor, a user transaction to purchase the at least one item usingthe virtual credit card number.

In some embodiments, the user interaction may include visiting an onlinestore. The at least one offer may be offered by the online store.

In some embodiments, the user interaction may include selecting the atleast one item. The at least one offer may apply to the selected atleast one item.

In some embodiments, the method may include sending, by the processor, anotification describing the at least one offer to a user deviceassociated with the user interaction. The method may include receiving,by the processor, a user request to apply the at least one offer. Theautomatically applying may be performed in response to the user request.

In some embodiments, the method may include collecting, by theprocessor, a plurality of offers from a plurality of sources. Theanalyzing may include selecting the at least one offer from thecollected plurality of offers.

In some embodiments, the processing may include applying a charge to auser account for the at least one item purchased using the virtualcredit card number.

Some embodiments disclosed herein may include a method of applying anoffer to a transaction. The method may include detecting, by aprocessor, a user interaction with a user interface provided through anetwork by a server. The method may include analyzing, by the processor,the user interaction to identify at least one offer associated with atleast one item available for purchase through the user interface. Theoffer may be associated with a first payment type. The method mayinclude processing, by the processor, a user transaction to purchase theat least one item. The processing may include automatically applying thefirst payment type to the transaction.

In some embodiments, the user interaction may include visiting an onlinestore. The at least one offer may be offered by the online store.

In some embodiments, the user interaction may include selecting the atleast one item. The at least one offer may apply to the selected atleast one item.

In some embodiments, the method may include sending, by the processor, anotification describing the at least one offer to a user deviceassociated with the user interaction. The method may include receiving,by the processor, a user request to apply the at least one offer. Theautomatically applying may be performed in response to the user request.

In some embodiments, the method may include collecting, by theprocessor, a plurality of offers from a plurality of sources. Theanalyzing may include selecting the at least one offer from thecollected plurality of offers.

In some embodiments, the automatically applying may include selectingthe first payment type from among a plurality of payment typesassociated with a user requesting the user transaction.

In some embodiments, the automatically applying may include generating avirtual credit card number as the first payment type.

Some embodiments disclosed herein may include a server device. Theserver device may include a transceiver, a processor in communicationwith the at least one transceiver, and a non-transitory memory incommunication with the processor. The memory may be configured to storea plurality of offers and to store instructions that, when executed bythe processor, cause the processor to perform processing. The processingmay include detecting a user interaction with a user interface providedthrough a network by a server. The processing may include analyzing theuser interaction to identify, within the plurality of offers, at leastone offer associated with at least one item available for purchasethrough the user interface. The offer may be associated with a firstpayment type. The processing may include causing a user transaction topurchase the at least one item to be processed. The causing may includeautomatically applying the first payment type to the transaction.

In some embodiments, the processing may further include sending, by thetransceiver, a notification describing the at least one offer to a userdevice associated with the user interaction and receiving, by thetransceiver, a user request to apply the at least one offer. Theautomatically applying may be performed in response to the user request.

In some embodiments, the processing may further include collecting theplurality of offers from a plurality of sources and storing thecollected plurality of offers in the memory. In some embodiments, thecollecting may include gathering data from at least one network sourceby the transceiver.

In some embodiments, the automatically applying may include selectingthe first payment type from among a plurality of payment typesassociated with a user requesting the user transaction.

In some embodiments, the automatically applying may include generating avirtual credit card number as the first payment type.

In some embodiments, the detecting may include analyzing network trafficreceived by the transceiver.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 shows a network according to an embodiment of the presentdisclosure.

FIG. 2 shows a computer device according to an embodiment of the presentdisclosure.

FIG. 3 shows a server device according to an embodiment of the presentdisclosure.

FIG. 4 shows a reward/benefit optimization process according to anembodiment of the present disclosure.

FIG. 5 shows a reward/benefit determination process according to anembodiment of the present disclosure.

FIG. 6 shows a reward/benefit offer process according to an embodimentof the present disclosure.

FIG. 7 shows a reward/benefit redemption process according to anembodiment of the present disclosure.

FIG. 8 shows a virtual card process according to an embodiment of theinvention.

DETAILED DESCRIPTION OF SEVERAL EMBODIMENTS

Systems and methods described herein may improve transactionauthorization and/or processing systems through identification andimplementation of optimized payment options. For example, anoptimization service may provide a customer with optimized applicationsof card benefits and/or payment options (e.g., including rewards pointsand/or financing) based on combining browser extensions and cookietracking with data collected on various card and bank accounts. In someembodiments, the optimization service may automatically select a bestpayment option from among available options for the user (e.g., user'saccounts and/or vendor-specific options). In some embodiments, theoptimization service may automatically apply the best payment option toan ecommerce transaction, which may involve unconventional processingsuch as generation of virtual payment products for use in the specifictransaction and later conversion to a real payment product, in a mannerthat is seamless and that does not disrupt processing by ecommercesystem(s) involved in the transaction.

FIG. 1 shows a network 100 according to an embodiment of the presentdisclosure. A user device 112 may be used for performing or attemptingto perform a transaction (e.g., purchasing something from a vendor inexchange for funds). User device 112 may be a smartphone, tablet,computer, or other device configured to request transactions. Userdevice 112 may communicate with transaction device 122 to perform thetransaction. Transaction device 122 may be a server hosting an ecommercewebsite or online store, a point of sale device, or other deviceconfigured to perform a transaction through communication with userdevice 112. User device 112 and transaction device 122 may communicateby network 100 (e.g., the Internet or another public and/or privatenetwork) and/or through a direct connection (e.g., Bluetooth™ or othernear-field communication) in some embodiments.

Server device 102 may be a server configured to analyze interactionsbetween user device 112 and transaction device 122 in order to detectalternative payment options for transactions. Server device 102 may alsobe configured to suggest and/or implement the alternative paymentoptions. For example, server device 102 may include optimization service104, which may be configured to analyze, suggest, and/or processtransactions as described in detail below, and optimization database106, which may be configured to store transaction and/or payment optiondata. In some embodiments, optimization service 104 may draw onavailable offer data provided by transaction device 122, external datasource(s) 132, and/or optimization database 106 in order to findadvantageous payment options. In some embodiments, optimization service104 may create virtual payment products (e.g., virtual credit cardnumbers) in order to provide payment options that are different fromthose offered by a credit card provided by user device 112 for thetransaction, and optimization service 104 may then bill the credit cardprovided by user device 112 based on the transaction carried out by thevirtual credit card. Server device 102 is depicted as a single serverincluding a single optimization service 104 and optimization database106 for ease of illustration, but those of ordinary skill in the artwill appreciate that server device 102 may be embodied in differentforms for different implementations. For example, server device 102 mayinclude a plurality of servers.

FIG. 2 shows a computer device (e.g., user device 112). For example,user device 112 may interact with server device 102 and/or transactiondevice 122 to process transaction requests as described herein. The userdevice 112 may include a memory interface 202, one or more dataprocessors, image processors, central processing units 204, and aperipherals interface 206. The memory interface 202, the one or moreprocessors 204, and/or the peripherals interface 206 may be separatecomponents or may be integrated in one or more integrated circuits. Thevarious components in the user device 112 may be coupled by one or morecommunication buses or signal lines.

Sensors, devices, and subsystems may be coupled to the peripheralsinterface 206 to facilitate multiple functionalities. For example, amotion sensor 210, a light sensor 212, and a proximity sensor 214 may becoupled to the peripherals interface 206 to facilitate orientation,lighting, and proximity functions. Other sensors 216 may also beconnected to the peripherals interface 206, such as a global navigationsatellite system (GNSS) (e.g., GPS receiver), a temperature sensor, abiometric sensor, magnetometer, or other sensing device, to facilitaterelated functionalities.

A camera subsystem 220 and an optical sensor 222, e.g., a chargedcoupled device (CCD) or a complementary metal-oxide semiconductor (CMOS)optical sensor, may be utilized to facilitate camera functions, such asrecording photographs and video clips. The camera subsystem 220 and theoptical sensor 222 may be used to collect images of a user to be usedduring authentication of a user, e.g., by performing facial recognitionanalysis.

Communication functions may be facilitated through one or more wiredand/or wireless communication subsystems 224, which can include radiofrequency receivers and transmitters and/or optical (e.g., infrared)receivers and transmitters. For example, the Bluetooth (e.g., Bluteoothlow energy (BTLE)) and/or WiFi communications described herein may behandled by wireless communication subsystems 224. The specific designand implementation of the communication subsystems 224 may depend on thecommunication network(s) over which the user device 112 is intended tooperate. For example, the user device 112 may include communicationsubsystems 224 designed to operate over a GSM network, a GPRS network,an EDGE network, a WiFi or WiMax network, and a Bluetooth™ network. Forexample, the wireless communication subsystems 224 may include hostingprotocols such that the device 120 can be configured as a base stationfor other wireless devices and/or to provide a WiFi service.

An audio subsystem 226 may be coupled to a speaker 228 and a microphone230 to facilitate voice-enabled functions, such as speaker recognition,voice replication, digital recording, and telephony functions. The audiosubsystem 226 may be configured to facilitate processing voice commands,voiceprinting, and voice authentication, for example.

The I/O subsystem 240 may include a touch-surface controller 242 and/orother input controller(s) 244. The touch-surface controller 242 may becoupled to a touch surface 246. The touch surface 246 and touch-surfacecontroller 242 may, for example, detect contact and movement or breakthereof using any of a plurality of touch sensitivity technologies,including but not limited to capacitive, resistive, infrared, andsurface acoustic wave technologies, as well as other proximity sensorarrays or other elements for determining one or more points of contactwith the touch surface 246.

The other input controller(s) 244 may be coupled to other input/controldevices 248, such as one or more buttons, rocker switches, thumb-wheel,infrared port, USB port, and/or a pointer device such as a stylus. Theone or more buttons (not shown) may include an up/down button for volumecontrol of the speaker 228 and/or the microphone 230.

In some implementations, a pressing of the button for a first durationmay disengage a lock of the touch surface 246; and a pressing of thebutton for a second duration that is longer than the first duration mayturn power to the user device 112 on or off. Pressing the button for athird duration may activate a voice control, or voice command, modulethat enables the user to speak commands into the microphone 230 to causethe device to execute the spoken command. The user may customize afunctionality of one or more of the buttons. The touch surface 246 can,for example, also be used to implement virtual or soft buttons and/or akeyboard.

In some implementations, the user device 112 may present recorded audioand/or video files, such as MP3, AAC, and MPEG files. In someimplementations, the user device 112 may include the functionality of anMP3 player, such as an iPod™. The user device 112 may, therefore,include a 36-pin connector and/or 8-pin connector that is compatiblewith the iPod. Other input/output and control devices may also be used.

The memory interface 202 may be coupled to memory 250. The memory 250may include high-speed random access memory and/or non-volatile memory,such as one or more magnetic disk storage devices, one or more opticalstorage devices, and/or flash memory (e.g., NAND, NOR). The memory 250may store an operating system 252, such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS, or an embedded operating system such as VxWorks.

The operating system 252 may include instructions for handling basicsystem services and for performing hardware dependent tasks. In someimplementations, the operating system 252 may be a kernel (e.g., UNIXkernel). In some implementations, the operating system 252 may includeinstructions for performing voice authentication.

The memory 250 may also store communication instructions 254 tofacilitate communicating with one or more additional devices, one ormore computers and/or one or more servers. The memory 250 may includegraphical user interface instructions 256 to facilitate graphic userinterface processing; sensor processing instructions 258 to facilitatesensor-related processing and functions; phone instructions 260 tofacilitate phone-related processes and functions; electronic messaginginstructions 262 to facilitate electronic-messaging related processesand functions; web browsing instructions 264 to facilitate webbrowsing-related processes and functions; media processing instructions266 to facilitate media processing-related processes and functions;GNSS/Navigation instructions 268 to facilitate GNSS andnavigation-related processes and instructions; and/or camerainstructions 270 to facilitate camera-related processes and functions.

The memory 250 may store ecommerce instructions 272 to facilitate otherprocesses and functions, such as forming transaction requests and/orcommunicating with server device 102 and/or transaction device 122 toprocess the transaction requests as described herein.

The memory 250 may also store other software instructions 274, such asweb video instructions to facilitate web video-related processes andfunctions; and/or web shopping instructions to facilitate webshopping-related processes and functions. In some implementations, themedia processing instructions 266 may be divided into audio processinginstructions and video processing instructions to facilitate audioprocessing-related processes and functions and video processing-relatedprocesses and functions, respectively.

Each of the above identified instructions and applications maycorrespond to a set of instructions for performing one or more functionsdescribed herein. These instructions need not be implemented as separatesoftware programs, procedures, or modules. The memory 250 may includeadditional instructions or fewer instructions. Furthermore, variousfunctions of the user device 112 may be implemented in hardware and/orin software, including in one or more signal processing and/orapplication specific integrated circuits.

FIG. 3 shows a server device 102 according to an embodiment of thepresent disclosure. The server device 102 may be implemented on anyelectronic device that runs software applications derived from compiledinstructions, including without limitation personal computers, servers,smart phones, media players, electronic tablets, game consoles, emaildevices, etc. In some implementations, the server device 102 may includeone or more processors 302, one or more input devices 304, one or moredisplay devices 306, one or more network interfaces 308, and one or morecomputer-readable mediums 310. Each of these components may be coupledby bus 312.

Display device 306 may be any known display technology, including butnot limited to display devices using Liquid Crystal Display (LCD) orLight Emitting Diode (LED) technology. Processor(s) 302 may use anyknown processor technology, including but not limited to graphicsprocessors and multi-core processors. Input device 304 may be any knowninput device technology, including but not limited to a keyboard(including a virtual keyboard), mouse, track ball, and touch-sensitivepad or display. Bus 312 may be any known internal or external bustechnology, including but not limited to ISA, EISA, PCI, PCI Express,NuBus, USB, Serial ATA or FireWire. Computer-readable medium 310 may beany medium that participates in providing instructions to processor(s)302 for execution, including without limitation, non-volatile storagemedia (e.g., optical disks, magnetic disks, flash drives, etc.), orvolatile media (e.g., SDRAM, ROM, etc.).

Computer-readable medium 310 may include various instructions 314 forimplementing an operating system (e.g., Mac OS®, Windows®, Linux). Theoperating system may be multi-user, multiprocessing, multitasking,multithreading, real-time, and the like. The operating system mayperform basic tasks, including but not limited to: recognizing inputfrom input device 304; sending output to display device 306; keepingtrack of files and directories on computer-readable medium 310;controlling peripheral devices (e.g., disk drives, printers, etc.) whichcan be controlled directly or through an I/O controller; and managingtraffic on bus 312. Network communications instructions 316 mayestablish and maintain network connections (e.g., software forimplementing communication protocols, such as TCP/IP, HTTP, Ethernet,telephony, etc.).

Optimization service instructions 318 can include instructions thatevaluate transaction requests and/or provide alternative transactionoptions as described herein. Application(s) 320 may be an applicationthat uses or implements the processes described herein and/or otherprocesses. The processes may also be implemented in operating system314.

The described features may be implemented in one or more computerprograms that may be executable on a programmable system including atleast one programmable processor coupled to receive data andinstructions from, and to transmit data and instructions to, a datastorage system, at least one input device, and at least one outputdevice. A computer program is a set of instructions that can be used,directly or indirectly, in a computer to perform a certain activity orbring about a certain result. A computer program may be written in anyform of programming language (e.g., Objective-C, Java), includingcompiled or interpreted languages, and it may be deployed in any form,including as a stand-alone program or as a module, component,subroutine, or other unit suitable for use in a computing environment.

Suitable processors for the execution of a program of instructions mayinclude, by way of example, both general and special purposemicroprocessors, and the sole processor or one of multiple processors orcores, of any kind of computer. Generally, a processor may receiveinstructions and data from a read-only memory or a random access memoryor both. The essential elements of a computer may include a processorfor executing instructions and one or more memories for storinginstructions and data. Generally, a computer may also include, or beoperatively coupled to communicate with, one or more mass storagedevices for storing data files; such devices include magnetic disks,such as internal hard disks and removable disks; magneto-optical disks;and optical disks. Storage devices suitable for tangibly embodyingcomputer program instructions and data may include all forms ofnon-volatile memory, including by way of example semiconductor memorydevices, such as EPROM, EEPROM, and flash memory devices; magnetic diskssuch as internal hard disks and removable disks; magneto-optical disks;and CD-ROM and DVD-ROM disks. The processor and the memory may besupplemented by, or incorporated in, ASICs (application-specificintegrated circuits).

To provide for interaction with a user, the features may be implementedon a computer having a display device such as a CRT (cathode ray tube)or LCD (liquid crystal display) monitor for displaying information tothe user and a keyboard and a pointing device such as a mouse or atrackball by which the user can provide input to the computer.

The features may be implemented in a computer system that includes aback-end component, such as a data server, or that includes a middlewarecomponent, such as an application server or an Internet server, or thatincludes a front-end component, such as a client computer having agraphical user interface or an Internet browser, or any combinationthereof. The components of the system may be connected by any form ormedium of digital data communication such as a communication network.Examples of communication networks include, e.g., a telephone network, aLAN, a WAN, and the computers and networks forming the Internet.

The computer system may include clients and servers. A client and servermay generally be remote from each other and may typically interactthrough a network. The relationship of client and server may arise byvirtue of computer programs running on the respective computers andhaving a client-server relationship to each other.

One or more features or steps of the disclosed embodiments may beimplemented using an API. An API may define one or more parameters thatare passed between a calling application and other software code (e.g.,an operating system, library routine, function) that provides a service,that provides data, or that performs an operation or a computation.

The API may be implemented as one or more calls in program code thatsend or receive one or more parameters through a parameter list or otherstructure based on a call convention defined in an API specificationdocument. A parameter may be a constant, a key, a data structure, anobject, an object class, a variable, a data type, a pointer, an array, alist, or another call. API calls and parameters may be implemented inany programming language. The programming language may define thevocabulary and calling convention that a programmer will employ toaccess functions supporting the API.

In some implementations, an API call may report to an application thecapabilities of a device running the application, such as inputcapability, output capability, processing capability, power capability,communications capability, etc.

FIG. 4 shows a reward/benefit optimization process 400 according to anembodiment of the present disclosure. Server device 102 may performprocess 400 through internal processing and/or interaction with otherdevices on network 100, such as user device 112, transaction device 122,and/or data source 132. Process 400 may identify, implement, and processoptimized payment options for ecommerce transactions.

At 402, server device 102 may collect data that may be used fordetermining available reward and/or benefit options. For example,optimization service 104 may gather data according to the process ofFIG. 5.

FIG. 5 shows a reward/benefit determination process 500 according to anembodiment of the present disclosure. Server device 102 may performprocess 500 at step 402 of process 400 to determine available offers fora customer attempting a transaction. In some embodiments, process 500may be triggered when a customer enters into a transaction process. Forexample, optimization service 104 may detect an interaction between userdevice 112 and transaction device 122 through network 100 (e.g., bymonitoring network 100 traffic and/or through communication fromtransaction device 122 or user device 112 to optimization service 104).In some embodiments, user device 112 may have an application, webbrowser extension, cookie, or other code installed thereon that maycommunicate with optimization service 104 to indicate that user device112 is communicating with transaction device 122. Transaction device 122may serve an ecommerce website with one or more products available forsale, for example. The interaction may be related to a specific intendedtransaction (e.g., browsing a particular product's page and/or addingthe product to a cart) or may be more general (e.g., merely visiting theecommerce website).

At 502, server device 102 may gather data about the customer's accountsto determine whether there are any offers associated with the accounts.For example, in some embodiments, the application, web browserextension, cookie, or other code installed on user device 112 may beprovided by a bank or other financial institution or may be otherwiseassociated with the bank or financial institution. In some cases, a usermay be logged into the application or extension or may otherwiseassociate their bank account with the code on user device 112.Accordingly, when user device 112 communicates with optimization service104, optimization service 104 may be able to determine an identity of auser device 112 user or an account associated with user device 112. Inanother example, optimization service 104 may store data associating aparticular user device 112 with a particular account holder. In anycase, user device 112 may be able to identify an account of the user anddetermine information about payment options associated with the account.For example, the account may have fees, temporary rewards (e.g., cashback at certain merchants), persistent rewards (e.g., miles or pointsearned per dollar spent), accruals against maximum points available tobe earned, etc. In some cases, user device 112 may be associated withmultiple accounts, and optimization service 104 may be able to identifyinformation about each account (e.g., multiple credit cards, wheredifferent credit cards may offer different point options depending ontype of transaction).

At 504, server device 102 may gather publicly available data todetermine whether there are any publicly available offers relevant tothe situation. For example, user device 112 may communicate withtransaction device 122 to view a website associated with a specificproduct or merchant, and this data may be received by optimizationservice 104 (e.g., through reporting by the cookie or browserextension). Optimization service 104 may crawl and/or scrape network 100data, including web pages hosted by transaction device 122 and/or datasource(s) 132 for example, in order to locate any offers related to theproduct and/or merchant. Optimization service 104 may use any webcrawling and/or scraping technique to locate such data, for examplebased on key words identifying the product and/or merchant. The crawlingand/or scraping may be performed in real time in response to theinteraction noted above or may have been performed previously withresults stored in optimization database 106.

At 506, server device 102 may gather merchant data related totransaction device 122 to determine whether there are any availableoffers specific to the merchant. In some cases, the merchant mayself-report data about offers to optimization service 104 (e.g., throughan API accessed by transaction device 122), and this data may be storedby optimization service 104 in optimization database 106. In some cases,optimization service 104 may scrape data from the web page(s) hosted bytransaction device 122 that are being requested by user device 112(e.g., in real time), and this data may be stored by optimizationservice 104 in optimization database 106.

Returning to FIG. 4, at 404, server device 102 may present one or moreavailable offers determined at 402 to a customer attempting atransaction. For example, optimization service 104 may present offersaccording to the process of FIG. 6.

FIG. 6 shows a reward/benefit offer process 600 according to anembodiment of the present disclosure. Server device 102 may performprocess 600 at step 404 of process 400 at one or more points during acustomer's interaction with an ecommerce website to present offers thatmay be relevant to the browsing context.

At 602, server device 102 may detect a customer interacting with aparticular web page. For example, as noted above, user device 112 mayreport an interaction with transaction device 122 to optimizationservice 104 (e.g., through a cookie, application, or browser extension).Optimization service 104 may identify transaction device 122 and/or aspecific webpage being served to user device 112 by transaction device122 from the data reported by user device 112.

At 604, server device 102 may identify an offer associated with and/orapplicable to the specific webpage. For example, a merchant may have asite-wide sale or financing offer available. Optimization service 104may have data describing the sale or financing offer that may have beengathered through process 500 described above. Likewise, optimizationservice 104 may have data describing a generally-applicable offer (e.g.,provided by a user's credit card) that may have been gathered throughprocess 500 described above. When the user interacts with the site(e.g., as determined at 602), optimization service 104 may identify thesale or financing offer (and/or any other offer) for the site.

At 606, server device 102 may present any offer(s) identified at 604 tothe user. For example, optimization service 104 may send informationdescribing the offer to user device 112, which may provide the user withthe option to accept the offer (e.g., as described below with respect toFIG. 7).

At 608, server device 102 may detect further customer interactions withthe web page. For example, as noted above, user device 112 may report aninteraction with transaction device 122 to optimization service 104(e.g., through a cookie, application, or browser extension). In somecases, the user may browse to a particular item's page and/or may addthe item to a shopping cart or otherwise initiate a transaction topurchase the item. Optimization service 104 may identify transactiondevice 122 and/or a specific item being featured in the communicationwith user device 112 by transaction device 122 from the data reported byuser device 112.

At 610, server device 102 may identify an offer associated with and/orapplicable to the specific item. For example, a merchant or the item'smanufacturer may have a specific offer applying to the item available.Optimization service 104 may have data describing the offer that mayhave been gathered through process 500 described above. Likewise,optimization service 104 may have data describing an offer for the itemfrom a user's account (e.g., extra points on a travel-related purchaseprovided by a user's travel credit card, for example as defined bymerchant category codes and transaction (e.g., NAICS) codes known tooptimization service 104) that may have been gathered through process500 described above. When the user interacts with the site (e.g., asdetermined at 602), optimization service 104 may identify the offer(s)that may be particularly applicable to the item.

At 612, server device 102 may present any offer(s) identified at 610 tothe user. For example, optimization service 104 may send informationdescribing the offer to user device 112, which may provide the user withthe option to accept the offer (e.g., as described below with respect toFIG. 7).

Returning to FIG. 4, at 406, server device 102 may receive a customerselection of an offer presented at 404 and process the transactionaccording to the customer selection. For example, optimization service104 may receive a response from user device 112 including the selectionand process the transaction as directed by the selection according tothe process of FIG. 7.

FIG. 7 shows a reward/benefit redemption process 700 according to anembodiment of the present disclosure. Server device 102 may performprocess 700 at step 406 of process 400 in response to receivingacceptance of an offer presented at 404 from user device 112.

At 702, server device 102 may receive information from user device 112and/or transaction device 122 indicating that an offer presented at 404has been selected and/or including other transaction details. Forexample, in addition to identifying the selection, the information mayidentify a payor (e.g., a user of user device 112), a payee (e.g., amerchant associated with transaction device 122), an amount of thetransaction, an account to be debited or charged for the transaction,and/or other transaction-related information.

At 704, server device 102 may analyze the information. For example,optimization service 104 may determine the terms of the accepted offerand whether the offer is associated with a payment account of the user.For example, the offer may be associated with a payment account of theuser when it is provided as a perk or reward for the user's credit cardor other account (e.g., the user may have opted to pay using a creditcard they possess that gives strong cash back rewards for thetransaction). In other cases, optimization service 104 may determinethat the offer is not provided by a payment account of the user, and maybe, for example, an offer provided by the merchant or the manufacturerof the item as described above. If the offer is associated with apayment account of the user, process 700 may proceed to 708. If theoffer is not associated with a payment account of the user, process 700may proceed to 706.

At 706, server device 102 may generate a virtual credit card number forprocessing the transaction. For example, optimization service 104 maygenerate instructions for executing a payment on the terms provided bythe selected offer. The terms may include a reduced price for the item,a financed payment plan for the item, a reward for the purchase (e.g.,airline miles, credit card points, cash back, etc.), or a combinationthereof. Optimization service 104 may generate a virtual credit cardnumber that is eligible for the terms. In some embodiments, the virtualcredit card number may be valid for the specific transaction beingperformed only and/or may expire after the single use. The virtualcredit card number may be used for processing the transaction, andthereafter, a real account of the user may be charged for the amountpaid for using the virtual credit card.

FIG. 8 shows a virtual card process 800 according to an embodiment ofthe invention. For example, server device 102 may use process 800 togenerate the virtual credit card number at 706 in some embodiments.

At 802, server device 102 may generate the virtual credit card numberitself. For example, optimization service 104 may generate a 16 digitcredit card number and/or other information needed for the transaction(e.g., a card expiration date, a card security code, a card accountholder name, etc.).

At 804, server device 102 may link the virtual credit card number to theunderlying account (e.g., the account to be debited or charged for thetransaction as determined at 702). For example, optimization service 104may link the virtual credit card number to the underlying accountthrough a token vault, where an underlying account identifier may beassociated with the virtual credit card number.

At 806, server device 102 may associate the virtual credit card numberwith one or more transaction terms. For example, optimization service104 may associate the virtual credit card number with a specific set ofterms by applying transactions on the virtual credit card number to aspecific bin of parameters in the account system of record, which may becloud based, mainframe based, or distributed ledger based. For example,terms may include a certain annual percentage rate, a fixed set ofpayment terms, or a combination of those features along with others. Atthis point, the virtual credit card number may be available forprocessing. As described below, the virtual credit card number may beprocessed as a normal card transaction, pursuant to the rules of thecard networks.

Returning to FIG. 7, at 708, server device 102 may process thetransaction. For example, if the offer is determined to be associatedwith a payment account of the user at 704, optimization service 104 mayprocess the transaction using the payment account (e.g., the actualcredit card number of the user's credit card account) in a standardfashion. Otherwise, if a virtual credit card number was generated at706, optimization service 104 may process the transaction using thevirtual credit card number. In some cases, server device 102 may includetransaction processing functionality and may process the transaction. Inother cases, optimization service 104 may provide payment details (e.g.,real or virtual credit card number, parties involved, amount involved,etc.) to a payment transaction service separate from server device 102through network 100 or a secure channel.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example and notlimitation. It will be apparent to persons skilled in the relevantart(s) that various changes in form and detail can be made thereinwithout departing from the spirit and scope. In fact, after reading theabove description, it will be apparent to one skilled in the relevantart(s) how to implement alternative embodiments. For example, othersteps may be provided, or steps may be eliminated, from the describedflows, and other components may be added to, or removed from, thedescribed systems. Accordingly, other implementations are within thescope of the following claims.

In addition, it should be understood that any figures which highlightthe functionality and advantages are presented for example purposesonly. The disclosed methodology and system are each sufficientlyflexible and configurable such that they may be utilized in ways otherthan that shown.

Although the term “at least one” may often be used in the specification,claims and drawings, the terms “a”, “an”, “the”, “said”, etc. alsosignify “at least one” or “the at least one” in the specification,claims and drawings.

Finally, it is the applicant's intent that only claims that include theexpress language “means for” or “step for” be interpreted under 35U.S.C. 112(f). Claims that do not expressly include the phrase “meansfor” or “step for” are not to be interpreted under 35 U.S.C. 112(f).

1-20. (canceled)
 21. A method of applying an offer to a transactioncomprising: detecting, by a processor, a user interaction with a userinterface of a website provided through a network by a server;analyzing, by the processor, the user interaction to identify at leastone offer associated with an item to be purchased from the websitethrough the user interface, the at least one offer provided by thewebsite and associated with a user-selectable first payment typeprovided by the website, the identifying including determining that abenefit conveys to the user because of the application of the firstpayment type to a user transaction to purchase the item from the websiteaccording to terms of the offer provided by the website; presenting, bythe processor, the at least one offer and an indication of the benefitto the user; receiving a selection of the user-selectable first paymenttype and an acceptance of the at least one offer through the userinterface; generating, by the processor, a virtual credit card numberhaving applied thereto one or more payment terms specified by the firstpayment type; linking, by the processor, the virtual credit card numberto a financial account of the user; and processing, by the processor,the user transaction to purchase the item from the website using thevirtual credit card number according to the one or more payment terms,the processing including charging or debiting the financial account ofthe user according to the one or more payment terms.
 22. The method ofclaim 21, wherein: the user interaction includes visiting an onlinestore.
 23. The method of claim 21, wherein: the user interactionincludes selecting the item; and the at least one offer applies to theselected item.
 24. The method of claim 21, further comprising: sending,by the processor, a notification describing the at least one offer to auser device associated with the user interaction; and receiving, by theprocessor, a user request to apply the at least one offer, wherein theprocessing is performed in response to the user request.
 25. The methodof claim 21, further comprising collecting, by the processor, aplurality of offers from a plurality of sources, wherein the analyzingincludes selecting the at least one offer from the collected pluralityof offers.
 26. A server device comprising: a transceiver; a processor incommunication with the at least one transceiver; and a non-transitorymemory in communication with the processor, the memory configured tostore a plurality of offers and to store instructions that, whenexecuted by the processor, cause the processor to perform processingincluding: detecting a user interaction with a user interface of awebsite provided through a network by a server; analyzing the userinteraction to identify, within the plurality of offers, at least oneoffer associated with an item available to be purchased from the websitethrough the user interface, the at least one offer being provided by thewebsite and associated with a user-selectable first payment typeprovided by the website, the identifying including determining that abenefit conveys to the user because of the application of the firstpayment type to a user transaction to purchase the item from the websiteaccording to terms of the offer; receiving a selection of theuser-selectable first payment type and an acceptance of the at least oneoffer through the user interface; generating a virtual credit cardnumber having applied thereto one or more payment terms specified by thefirst payment type; linking the virtual credit card number to afinancial account of the user; and causing the user transaction topurchase the item from the website using the virtual credit card numberto be processed according to the one or more payment terms, the causingincluding automatically applying, by a payment transaction serviceprovided through the network, the first payment type to the transactionand charging or debiting the financial account of the user according tothe one or more payment terms.
 27. The device of claim 26, wherein theprocessing further includes: sending, by the transceiver, a notificationdescribing the at least one offer to a user device associated with theuser interaction; and receiving, by the transceiver, a user request toapply the at least one offer, wherein the automatically applying isperformed in response to the user request.
 28. The device of claim 26,wherein the processing further includes collecting the plurality ofoffers from a plurality of sources and storing the collected pluralityof offers in the memory.
 29. The device of claim 26, wherein thecollecting includes gathering data from at least one network source bythe transceiver.
 30. The device of claim 6, wherein the automaticallyapplying includes selecting the first payment type from among aplurality of payment types associated with a user requesting the usertransaction.
 31. The device of claim 26, wherein the detecting includesanalyzing network traffic received by the transceiver.